In order to use a peripheral device with a computer, it is often necessary to configure the computer to be able to communicate with and control the peripheral. For example, in order to use a printer, it is necessary to configure the computer to send print jobs to a printer. Configuring a computer to use a peripheral device may prove to be a difficult task at times. Ideally, users should be able to simply plug their peripheral into a power outlet, connect the peripheral to the computer, and then begin using the peripheral without any additional effort.
However, the way in which a peripheral is connected to a computer greatly influences the amount of effort required to configure the computer to use the peripheral. If the computer and printer, for example, are connected through a direct connection (e.g., a parallel or serial connection), then automatic configuration can occur with some operating systems. Software that resides in the operating system periodically checks for the presence of directly connected peripherals. If any peripherals are found for which the computer is not configured to use, the identity of the peripheral is determined using conventional means (e.g., PML (peripheral management language)) and the necessary configuration takes place to enable the computer to use the peripheral. This typically involves installing software or other user intervention. Because the peripheral is directly connected to the computer, an assumption is made that the computer should be configured to be able to use it.
Unfortunately, the method described above does not work well when applied to networked peripherals. A network may have many peripherals, only a portion of which are of interest to a given computer. Users would be dissatisfied if their computer were configured to use every available network peripheral; for example, users want their computer configured only for those printers to which they are likely to print. Providing access to all printers may overburden their computer with unnecessary printing software and would make selecting a printer more difficult since there would be a potentially unbounded number of printers from which to choose. For example, it would generally not be appropriate to setup a computer system to use a printer that is on a different floor or in a different building. In short, the assumption that is applied to direct connected peripherals does not necessarily apply to network connected peripherals; just because a network peripheral is available to a computer does not mean that the computer should be configured to be able to use it.
It is still necessary, however, to configure a networked computer to be able to use a subset of network peripherals that are relevant to the user. Today, printers are typically identified using two methods. According to a first method, the user is provided with a list of network peripherals discovered using conventional means. This list contains identifying information such as a model name of the peripheral and a network address. The user takes advantage of this information to select the peripheral for which they wish to configure their computer. For example, a user will often print a self-test page to determine the hardware network address (e.g., Ethernet address) of a printer in order to make an accurate selection. According to a second method, the user enters the network address of the peripheral directly into software, without consulting the list of discovered peripherals.
Both of these methods often require the user to select the desired printer by its network address. In the first method, the user may be able to determine the desired printer simply from the model name; however, when more than one particular model of a printer exists on the network, it may be difficult to choose which printer of a particular model to configure. Although common practice today, it is an unacceptable burden to require users to know details of a computer network, such as the network address of the printer. Furthermore, users should not have to print a self-test page to obtain the information necessary to configure their computer to use a printer.